package com.vhall.component.entity.preparation;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @author dongsong
 */
@Data
@TableName("scrolling")
@JsonInclude(JsonInclude.Include.NON_NULL)
@ApiModel(value = "ScrollingEntity对象", description = "跑马灯表")
public class ScrollingEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键id")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty(value = "直播房间id")
    @TableField("room_id")
    @JsonProperty(value = "room_id")
    private String roomId;

    @ApiModelProperty(value = "开启状态 0:关闭 1:开启")
    @TableField("scrolling_open")
    @JsonProperty(value = "scrolling_open")
    private Integer scrollingOpen;

    @ApiModelProperty(value = "文本内容")
    private String text;

    @ApiModelProperty(value = "文本类型 1：固定文本  2:固定文本+观看者id昵称")
    @TableField("text_type")
    @JsonProperty(value = "text_type")
    private Integer textType;


    @ApiModelProperty(value = "文本不透明度 百分比")
    @TableField("alpha")
    private Integer alpha;


    @ApiModelProperty(value = "文字大小")
    @TableField("size")
    private Integer size;

    @ApiModelProperty(value = "文字颜色")
    private String color;


    @ApiModelProperty(value = "显示间隔时间   时长/秒")
    @TableField("`interval`")
    private Integer interval;

    @ApiModelProperty(value = "文字移动速度:  10000: 慢,  6000:中,  3000:快")
    @TableField("speed")
    private Integer speed;

    @ApiModelProperty(value = "是否开启 : 0:关闭 1:开启")
    @TableField("`status`")
    private Integer status;

    @ApiModelProperty(value = "位置 1:随机 2:高 3:中 4:低")
    @TableField("position")
    private Integer position;


    @TableField("created_at")
    @JsonProperty(value = "created_at")
    private LocalDateTime createdAt;

    @TableField("updated_at")
    @JsonProperty(value = "updated_at")
    private LocalDateTime updatedAt;

    @TableField("deleted_at")
    @JsonProperty(value = "deleted_at")
    private LocalDateTime deletedAt;


}
